This invention relates generally to communications and more particularly to communication switching utilizing virtual circuits.
Communication networks are known to include a plurality of communication switches interoperably coupled to provide communication links between end users. Such end users are coupled to the communication network via ports associated with the plurality of switches. The users may be individual users such as personal computers, telephones, videophones, facsimile machines, etc., or may be servers, routers, private branch exchange (PBX), etc. The communication network may also include a network manager that manages the establishment of communication links and overall operation of the communication system.
As is known, to establish a communication path between ports of different switches, communication links between the end point switches and intervening switches need to be established. When such links have been allocated to this particular communication, the communication may commence. As is also known, each port may support multiple communications between users that traverse the same path over a sequence of links. To reduce the amount of state information required by intervening switches, paths of the multiple communication supported by a single port may be combined into a virtual path or a virtual circuit. A virtual circuit can be comprised of a plurality of connections (i.e., communication paths between end users) that are combined to appear as a single connection. In order to distinguish the individual component connections, their payloads must carry some form of unique identifier such as the packet headers of higher level protocols such as IP or Frame Relay. Note that these unique identifiers are only required on a per packet basis rather than a per cell basis. Such combining of connections into a virtual circuit is often referred to as a virtual circuit merge.
A virtual path (VP) is a combination of a plurality of virtual circuits to produce a single virtual path. Combining virtual circuits to obtain a virtual path is often referred to as virtual path aggregation, which is specified in the ATM Standard that govern the establishment of ATM (asynchronous transfer mode) communications. Virtual path aggregation differs from virtual circuit merge in that a virtual path aggregation and segregation is done at the ATM layer level while the virtual circuit merge aggregation and segregation is done at the packet layer.
An issue arises with virtual path aggregation and virtual circuit merge in existing known implementations in that the bandwidth for each virtual circuit associated therewith is the same and each of the virtual circuits in the VP aggregation or VC merge is accessed in a round-robin manner. While this provides rather fair treatment of each virtual circuit in the VC merge or VP aggregation, it is contra to the benefits of ATM switching which allows different levels of service (e.g., different bandwidths, latencies, cost, etc.).
Therefore, a need exists for a method and apparatus that allows VP aggregation and/or VC merge of virtual circuits in a manner such that the advantages of ATM switching are realized.